package cn.stylefeng.guns.modular.gridsystem.model.param;

import cn.stylefeng.guns.core.pojo.base.param.BaseParam;

import java.util.Date;

import lombok.Data;
import lombok.EqualsAndHashCode;

import javax.validation.constraints.NotNull;

/**
 * biz_collection_model
 *
 * @author zxw
 * @date 2022/11/01 15:32
 */
@Data
@EqualsAndHashCode(callSuper = true)
public class CollectionModelParam extends BaseParam {

    /**
     * 主键
     */
    @NotNull(message = "主键不能为空", groups = {edit.class})
    private Long id;

    /**
     * 网关ID
     */
    @NotNull(message = "网关ID不能为空", groups = {add.class, edit.class, sync.class})
    private Integer gatewayId;

    /**
     * 故障名称
     */
    @NotNull(message = "故障名称不能为空", groups = {add.class, edit.class})
    private String faultName;

    /**
     * 故障等级
     */
    @NotNull(message = "故障等级不能为空", groups = {add.class, edit.class})
    private String failureLevel;

    /**
     * 期望ID编号
     */
    @NotNull(message = "期望ID编号不能为空", groups = {add.class, edit.class})
    private String expectAccessToken;

    /**
     * 期望分组
     */
    @NotNull(message = "期望分组不能为空", groups = {add.class, edit.class})
    private String expectGroupId;

    /**
     * 文件ID
     */
    @NotNull(message = "文件ID不能为空", groups = {add.class, edit.class})
    private Long fileId;

    /**
     * 创建时间
     */
    private Date createTime;

    /**
     * 创建人
     */
    private Long createUser;

    /**
     * 更新时间
     */
    private Date updateTime;

    /**
     * 更新人
     */
    private Long updateUser;

    /**
     * 站点ID
     */
    private Integer stationId;

    private String[] gatewayIds;

    public @interface sync {
    }
}
